/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package control;

import java.util.List;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.context.FacesContext;
import modelos.Avaliacao;
import modelos.AvaliacaoDAO;
import modelos.Pessoa;
import modelos.PessoaDAO;

/**
 *
 * @author Marcelo
 */
@ManagedBean(name = "avaliacoesControle")
@SessionScoped
public class AvaliacoesControle {

    private List<Pessoa> listaPessoas;
    private List<Avaliacao> listaAvaliacoes;
    private Pessoa alunoSelecionado;

    public String abreAvaliacoes(){
        EPAControle epa;
        epa = (EPAControle)FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("EPAControle");

        if(epa != null && epa.getUsuario() != null)
        {
            //Se for aluno já vai direto pra página de avaliações
            if(epa.getUsuario().getTipo() == 1)
            {
                alunoSelecionado = epa.getUsuario();
                return "avaliacoes";
            }//Se for professor redireciona para a página de escolher aluno
            else
            {
                return "escolherAluno";
            }
        }
        else
            return null;
    }

    public String abreAvaliacoes(Pessoa p){
        alunoSelecionado = p;
        return "avaliacoes";
    }

    public Pessoa getAlunoSelecionado() {
        return alunoSelecionado;
    }

    public void setAlunoSelecionado(Pessoa alunoSelecionado) {
        this.alunoSelecionado = alunoSelecionado;
    }

    public List<Avaliacao> getListaAvaliacoes() {
        if(alunoSelecionado != null)
        {
            AvaliacaoDAO aDAO = new AvaliacaoDAO();
            listaAvaliacoes = aDAO.buscaAvaliacoesPorAluno(alunoSelecionado);
            return listaAvaliacoes;
        }
        else
            return null;
    }

    public void setListaAvaliacoes(List<Avaliacao> listaAvaliacoes) {
        this.listaAvaliacoes = listaAvaliacoes;
    }

    public List<Pessoa> getListaPessoas() {
        PessoaDAO pDAO = new PessoaDAO();
        listaPessoas = pDAO.buscaPessoasPorTipo(1);
        return listaPessoas;
    }

    public void setListaPessoas(List<Pessoa> listaPessoas) {
        this.listaPessoas = listaPessoas;
    }

}
